Summaries of EDI-survey responses

Author

Patrick Bolger

Published

21 Mar 2023, 4:47 pm

pre-summary stuff

Note regarding report

There are four sections to this report: pre-summary stuff, summaries, [some final remarks], and R Packages used/References. The first and third, pre-summary stuff and [some final remarks], respectively, would disappear before this report was shown to the public (if that is what’s desired). It’s just for internal purposes. Any section marked as [some remarks] are just Patrick’s thoughts for now.

attach R packages needed

Show the code
# List the packages needed for this file
neededPackages <- c(
  "dplyr",
  "purrr",
  "tidyr",
  "sjPlot",
  "sjlabelled",
  "sjmisc",
  "DT",
  "knitr",
  "gtsummary",
  "xfun",
  "stringr",
  "flextable",
  "showtext",
  "flextable")

# The code directly below installs R packages 
# Uncomment the code directly below if you 
# don't already have them installed.
#install.packages(neededPackages)

# The grateful package isn't available on CRAN, so it needs to be
# downloaded and installed directly from GitHub.
# Uncomment the code directly below in order to do so.
#install.packages("remotes"); library(remotes); remotes::install_github("Pakillo/grateful")

#Attach the packages
lapply(neededPackages, require, character.only=T)
library(grateful)

use arvo font throughout

Show the code
font_add_google("Arvo", "arvo")
showtext_auto()

import data

source of data

The data imported here was pre-processed in another R script.

Show the code
# Read in the data that was saved as .rds output in tidyingAndFormatting.qmd
visMain <- readRDS("tidyLabeledSurveyData.rds")

settings

Show the code
# set a general theme for sjPlot
sjPlot::set_theme(
  geom.label.size = 5,
  axis.angle.x = 10, 
  base = theme_blank(base_family = "arvo"),
  plot.backcol = "grey95",
  panel.gridcol = "grey95",
  plot.bordercol = "grey95",
  axis.linecolor = "grey95"
)

# for the flextable outputs from gtsummary
flextable::set_flextable_defaults(
  font.family = "arvo",
  font.size = 12,
  arraystretch = 1,
  theme_fun = "theme_zebra"
  )

# create an OST pallete for Likert scales with 5 items
# OST yellow will be neutral
OSTcolours4 <- 
  c(
    "#EB692A",
    "#f3a57f",
    "#7deaf6",
    "#26DCF0"
    )

# create an OST pallete for Likert scales with 7 items
# OST yellow will be neutral
OSTcolours6 <- 
  c(
    "#EB692A",
    "#f3a57f",
    "#fbe1d4",
    "#d4f8fc",
    "#7deaf6",
    "#26DCF0"
    )

ostBlue   <- "#26DCF0"
ostOrange <- "#EB692A"
ostYellow <- "#F7F11C"

functions

Show the code
# frequency plots 
ostFreqPlot <- function(.x, ostColour, sorting) {
  p <- 
    sjPlot::plot_frq(
      .x,
      title = get_label(.x),
      sort.frq = sorting,
      wrap.title = 70,
      type = "bar",
      axis.title = "response",
      expand.grid = T,
      geom.colors = ostColour, 
      show.values = T,
      drop.empty = F
    )
  print(p)
}

# stacked Likert plots (one with groups; one without)

## with 3 groups: treatment by others, self-regard, & isolation

stackedLikertGroups <- function(.x, likertTitle) {
  p <-
    sjPlot::plot_likert(
      .x,
      title = likertTitle,
      legend.title = "response",
      groups = c(1,1,1,1,1,2,2,3),
      groups.titles = c("Treatment by others", "Self-regard", "Isolation"),
      catcount = 6,
      legend.pos = "bottom",
      reverse.scale = T,
      sort.frq = "pos.asc",
      values = "sum.inside",
      cat.neutral = 4,
      cat.neutral.color = "#F7F11C",
      grid.range = c(1.1,1.1),
      group.legend.options = list(nrow = 1),
      wrap.labels = 40,
      geom.colors = OSTcolours6,
      geom.size = .75,
      digits = 0,
      show.prc.sign = T,
      rel_heights = c(5,2,2)
      )
print(p)
}

## with no grouping
stackedLikertNoGroups <- function(.x, likertTitle) {
  p <-
    sjPlot::plot_likert(
      .x,
      title = likertTitle,
      legend.title = "response",
      catcount = 4,
      legend.pos = "bottom",
      reverse.scale = T,
      sort.frq = "pos.asc",
      values = "sum.inside",
      cat.neutral = 3,
      cat.neutral.color = "#F7F11C",
      grid.range = c(1.1,1.1),
      group.legend.options = list(nrow = 1),
      wrap.labels = 40,
      geom.colors = OSTcolours4,
      geom.size = .75,
      digits = 0,
      show.prc.sign = T,
      )
print(p)
}

# Likert table
tableLikert <- function(.x, lowerBound, upperBound) {
  p <- 
    gtsummary::tbl_summary(
      .x,
      by = NULL,
      type = everything() ~ "continuous2",
      statistic = all_continuous() ~ c(
        "{mean}",
        "{sd}",
        "{median}",
        "{p25}, {p75}",
        "{min}, {max}"
        ),
      digits = list(everything() ~ c(1,2,1,1,1,0,0)),
      missing = "no"
      ) |>
    gtsummary::add_n(
      statistic = "{N_nonmiss} ({N_miss})",
      col_label = "n (NA)",
      footnote = FALSE,
      last = FALSE) |>
    gtsummary::modify_header(
      label = paste0(
        "**Statement** (",
        lowerBound,
        "; ",
        upperBound,
        ")"),
      n = "**n (NA)**"
      ) |>
    gtsummary::as_flex_table()
  flextable::flextable_to_rmd(p)
}

summaries

The variables are listed in rough order of the appearance in the survey. However, all items regarding a particular identity (e.g., gender) are presented together here, whereas the first three items are separated from the latter eight items in the survey itself.

The summaries are broadly categorised into three groups, each with its own main heading:

  • background
  • EDI issues
  • Code of Conduct and documentation

Each participant saw the all of the background items on the survey, as well as the code-of-conduct items. For the EDI issues, everyone saw at least one of the questions, with the exception of gender, in which case everyone saw at least two.

The one question that everyone saw had to do with whether they identified with, or was typically associated with, one of the EDI groups. In the case of gender, they simply indicated their gender (not whether they had a gender or not).

If they answered yes to that question, two more questions appeared. The first invited them to supply more specific information about their identify, but only if they wanted to. The second had to do with whether they felt that this particular identity had affected their interactions in the PsychoPy® community.

This latter question determined whether participants saw a further eight questions regarding that particular identity. If they answered yes, they saw them. If they answered no, they did not.

This has an important entailment: namely, although one may identify or be associated with a particular identity, that does not necessarily mean that that person felt that it had affected their interactions in the PsychoPy® community. Indeed, there were many participants throughout the survey who felt that they belonged with a particular identity, but indicated that it had not affected their interactions with the PsychoPy® community.

Recall that for the dimension of gender, everyone saw the question concerning whether they felt that their interactions had suffered as a result of gender. This is because everyone has a gender identity, so there was no logical way of excluding anyone from seeing the subsequent community-interaction question.

Below are the full survey categories in more detail.

  • background
    • career status
    • type of engagement with PsychoPy®
    • ways of contributing
    • deterrents to contributing
  • EDI issues
    • gender
    • sexual orientation
    • race and/or culture
    • disability and/or neurodivergence
    • language dominance
  • Code of Conduct and documentation
    • awareness
    • findability, searchability, & accessibility of documentation
    • trust in enforcement

None of the questions here required responses.

Each of the headings in the list above above is depicted below with a visualisation, followed by a verbal summary of that visualisation, and then statistics on central tendency in cases where there were any Likert items.

background

The first few items on the survey collected information about general background demographics, including participants’ career status, the role they typically play in their usage of PsychoPy®. These are covered in the subsections below.

career status

This section summarises, both visually and verbally, the answer to the following question:

Roughly speaking, what is your career status?

Participants had to choose from one of the following:

  • Researcher - early career (e.g. PhD, postdoc)
  • Researcher - mid career (e.g. Assistant/Associate Professor)
  • Researcher - senior (e.g. Full Professor)
  • Technical - junior
  • Technical - senior

visualisation

The visualisation below presents responses in descending order of frequency.

Show the code
visMain |>
  select(careerStatus) |>
  ostFreqPlot(
    ostColour = ostBlue, 
    sorting = "desc"
    )

Descending frequency barplot of the responses to the following question: 'Roughly speaking, what is your career status?'

verbal summary

The verbal summaries below proceed in the order in which the responses appeared in the original survey (i.e., not descending order of response frequency, as in the visualisation above).

With respect to the 221 participants who provided an answer to the question regarding their career status, the number of people in each career type are as follows:

  • research career
    • early phase: 104, or 47.1%
    • middle phase: 63, or 28.5%
    • senior phase: 30, or 13.6%
  • technical career
    • junior phase: 6, or 2.7%
    • senior phase: 18, or 8.1%

[some remarks]

  • Looks like almost half of the responses came from early-career researchers

type of engagement with PsychoPy®

This section summarises, both visually and verbally, the responses to the following prompt:

What best describes your role/usage of PsychoPy? (Note: ‘Contributor’ refers to any form of contribution, whether to the code, the documentation or supporting other users)

Participants had to choose from one of the following:

  • Occasional user
  • Frequent user
  • Occasional contributor
  • Frequent contributor
  • Senior developer

visualisation

The visualisation below presents responses in descending order of frequency.

Show the code
visMain |>
  select(engagement) |>
  ostFreqPlot(
    ostColour = ostOrange, 
    sorting = "desc"
    )

Descending frequency barplot of the responses to the following question: 'What best describes your role/usage of PsychoPy?'

verbal summary

The verbal summaries below proceed in the order in which the responses appeared in the original survey (i.e., not descending order of response frequency, as in the visualisation above).

With respect to the 229 participants who provided an answer to the question regarding roughly how they engage with PsychoPy/JS®, the number of people in each type are as follows:

  • user
    • occasional: 99, or 43.2%
    • frequent: 103, or 45%
  • contributor
    • occasional: 22, or 9.6%
    • frequent: 3, or 1.3%
  • senior developer: 2, or 0.9%

[some remarks]

  • just over 88% of the people who responded are users, not contributors
  • almost all of the others were occasional contributors
  • but about 2.2% were frequent contributors or senior developers

ways of contributing

This was a select-all-that-apply question, worded as follows:

In which way do you contribute most? (select all that apply)

Each participant could select more than one option when describing how they contribute most. For ease of visual and verbal summary, the responses were converted into new variables, one per response. It is important to note here that multiple responses from the same person were possible here (and certainly did occur).

The possible selections were as follows:

  • Improving documentation
  • Supporting other users (e.g., on the forum)
  • Fixing bugs
  • Adding new features
  • Providing translations to other languages
  • Other (describe)

It is important to keep in mind that participants may be counted as yes or no independently in any of the possible responses, which were converted to individual boolean variables below. If they selected the response, we assigned the value selected; if they did not, we assigned the value not selected.

improving documentation

The summaries below refer to responses to the following reworded statement:

[I] contribute [by] improving documentation

visualisation
Show the code
visMain |>
  select(contribImprvDoc) |>
  ostFreqPlot(
    ostColour = ostYellow, 
    sorting = "none"
    )

Frequency barplot of the response 'improving documentation' to the following question: 'In which way do you contribute most?'

verbal summary

Five, or 2.2% of those who responded to this question, indicated that they improved documentation.


supporting others

The summaries below refer to responses to the following reworded statement:

[I] contribute [by] supporting other users (e.g., on the forum)

visualisation
Show the code
visMain |>
  select(contribSuppOthers) |>
  ostFreqPlot(
    ostColour = ostBlue, 
    sorting = "none"
    )

Frequency barplot of the response 'supporting other users' to the following question: 'In which way do you contribute most?'

verbal summary

Twenty-Three, or 10% of those who responded to this question, indicated that they supported others.


fixing bugs

The summaries below refer to responses to the following reworded statement:

[I] contribute [by] fixing bugs

visualisation
Show the code
visMain |>
  select(contribFixBugs) |>
  ostFreqPlot(
    ostColour = ostOrange, 
    sorting = "none"
    )

Frequency barplot of the response 'fixing bugs' to the following question: 'In which way do you contribute most?'

verbal summary

Eight, or 3.5% of those who responded to this question, indicated that they fixed bugs.


adding features

The summaries below refer to responses to the following reworded statement:

[I] contribute [by] adding new features

visualisation
Show the code
visMain |>
  select(contribAddFeatures) |>
  ostFreqPlot(
    ostColour = ostYellow, 
    sorting = "none"
    )

Frequency barplot of the response 'adding new features' to the following question: 'In which way do you contribute most?'

verbal summary

Five, or 2.2% of those who responded to this question, indicated that they added features.


providing translations

The summaries below refer to responses to the following reworded statement:

[I] contribute [by] providing translations to other languages

visualisation
Show the code
visMain |>
  select(contribProvTransl) |>
  ostFreqPlot(
    ostColour = ostBlue, 
    sorting = "none"
    )

Frequency barplot of the response 'providing translations to other languages' to the following question: 'In which way do you contribute most?'

verbal summary

One, or 0.4% of those who responded to this question, indicated that they provided translations.


other

The summaries below refer to responses to the following reworded statement:

[I] contribute [in] other [ways not listed here]

visualisation
Show the code
visMain |>
  select(contribOther) |>
  ostFreqPlot(
    ostColour = ostOrange, 
    sorting = "none"
    )

Frequency barplot of the response 'Other (describe)' to the following question: 'In which way do you contribute most?'

verbal summary

Six, or 2.6% of those who responded to this question, indicated that they contributed in other ways.

descriptions

The participants were given the option to describe those other contributions. These descriptions are listed in the table below.

Show the code
visMain |> 
  select(contribOtherDesc) |>
  drop_na() |>
  datatable(
    class = 'cell-border stripe',
    colnames = "[I] contribute in these other ways"
  )

[some remarks]

  • supporting others seems to be the dominant form of contributing among the survey participants

deterrents to contributing

Participants were asked the following:

To what extent do each of the following limit the amount you feel able to contribute to the PsychoPy project?

Below the question was a list of the following potential causes:

  • Lack of interest
  • Lack of time
  • Lack of knowledge on how to get started
  • Lack of coding skills
  • Not confident I would be welcomed by the community
  • Not aware contributing was possible

Participants could rank each of these on a 1-5 Likert scale, where 1 indicated not at all and a 5 indicated very much.

This section summarises, both visually and verbally, the rankings that participants provided for each potential cause.

Note

Note that on this 1-5 scale, the number 3 is directly in the middle of the scale, which can be interpreted as neither agreeing nor disagreeing. We set responses of 3 to the side of the stacked frequency barplots below, in yellow.

Also, the barplots are sorted along descending frequency of agreement. That is, the topmost barplot is the one with highest number of agreements, whereas the bottommost barplot is the one with the highest number of disagreements.

visualisation
Show the code
visMain |>
  select(starts_with("deterrents")) |>
  stackedLikertNoGroups(
    likertTitle = "Deterrents to contributing"
    )

Stacked frequency barplots of the responses to: 'To what extent do each of the following limit the amount you feel able to contribute to the PsychoPy project?'

verbal summary

Below, we describe the numbers in the figure above, but in the order in which the items appeared in the survey.

  • Lack of interest limits the amount you feel able to contribute to the PsychoPy project
    • Total responses: 219
    • Those who believed this was not the case: 163, or 74.4%
    • Those who believed this was the case: 17, or 7.8%
    • Those who were neutral: 39, or 17.8%
  • [Lack of time] limit[s] the amount you feel able to contribute to the PsychoPy project
    • Total responses: 226
    • Those who believed this was not the case: 37, or 16.4%
    • Those who believed this was the case: 146, or 64.6%
    • Those who were neutral: 43, or 19%
  • [Not knowing how to start] limit[s] the amount you feel able to contribute to the PsychoPy project
    • Total responses: 226
    • Those who believed this was not the case: 82, or 36.3%
    • Those who believed this was the case: 85, or 37.6%
    • Those who were neutral: 59, or 26.1%
  • [Lack of coding skills] limit[s] the amount you feel able to contribute to the PsychoPy project
    • Total responses: 227
    • Those who believed this was not the case: 86, or 37.9%
    • Those who believed this was the case: 91, or 40.1%
    • Those who were neutral: 50, or 22%
  • [Lack of confidence in a welcome] limit[s] the amount you feel able to contribute to the PsychoPy project
    • Total responses: 225
    • Those who believed this was not the case: 182, or 80.9%
    • Those who believed this was the case: 15, or 6.7%
    • Those who were neutral: 28, or 12.4%
  • [Unawareness that contributing was possible] limit[s] the amount you feel able to contribute to the PsychoPy project
    • Total responses: 225
    • Those who believed this was not the case: 138, or 61.3%
    • Those who believed this was the case: 51, or 22.7%
    • Those who were neutral: 36, or 16%

central tendency

Show the code
visMain |>
  select(starts_with("deterrents"))  |>
  tableLikert(
    lowerBound = "1 = not at all",
    upperBound = "5 = very much"
  )
Statistical summaries of responses to statements regarding deterrents to contributing.

Statement (1 = not at all; 5 = very much)

n (NA)

N = 230

Lack of interest limits the amount you feel able to contribute to the PsychoPy project

219 (11)

Mean

1.8

SD

1.05

Median

1.0

IQR

1.0, 3.0

Range

1, 5

[Lack of time] limit[s] the amount you feel able to contribute to the PsychoPy project

226 (4)

Mean

3.8

SD

1.25

Median

4.0

IQR

3.0, 5.0

Range

1, 5

[Not knowing how to start] limit[s] the amount you feel able to contribute to the PsychoPy project

226 (4)

Mean

3.0

SD

1.32

Median

3.0

IQR

2.0, 4.0

Range

1, 5

[Lack of coding skills] limit[s] the amount you feel able to contribute to the PsychoPy project

227 (3)

Mean

3.1

SD

1.39

Median

3.0

IQR

2.0, 4.0

Range

1, 5

[Lack of confidence in a welcome] limit[s] the amount you feel able to contribute to the PsychoPy project

225 (5)

Mean

1.7

SD

1.04

Median

1.0

IQR

1.0, 2.0

Range

1, 5

[Unawareness that contributing was possible] limit[s] the amount you feel able to contribute to the PsychoPy project

225 (5)

Mean

2.3

SD

1.41

Median

2.0

IQR

1.0, 3.0

Range

1, 5

[some remarks]

  • Lack of time is dominant here
  • but not knowing how to start is close behind, which is good news for us in terms of increasing the contributor base
  • importantly, most participants disagreed that lack of interest or lack of confidence in a welcome were holding them back

workshops on contributing

This section summarises, both visually and verbally, the answer to the following question:

My engagement with the community would be helped if workshops were provided on how to contribute

Participants provided answers on a 1-5 Likert scale, where 1 indicated Strongly disagree and a 5 indicated Strongly agree.

visualisation

Show the code
visMain |> 
  select(workshopsOnContributing) |> 
  ostFreqPlot(
    ostColour = ostYellow,
    sorting = "none"
  )

Barplot of responses to the following statement: 'My engagement with the community would be helped if workshops were provided on how to contribute'

verbal summary

Below, we describe the numbers in the figure above.

  • My engagement with the community would be helped if workshops were provided on how to contribute
    • Total responses: 223
    • Those who strongly disagreed (1): 31, or 13.9%
    • Those who somewhat disagreed (2): 49, or 22%
    • Those who were neutral (3): 68, or 30.5%
    • Those who somewhat agreed (4): 41, or 18.4%
    • Those who strongly agreed (5): 34, or 15.2%

central tendency

Show the code
visMain |>
  select(workshopsOnContributing)  |>
  tableLikert(
    lowerBound = "1 = Strongly disagree",
    upperBound = "5 = Strongly agree"
  )
Statistical summaries of responses to statement regarding the potential helpfulness of contributor workshops.

Statement (1 = Strongly disagree; 5 = Strongly agree)

n (NA)

N = 230

My engagement with the community would be helped if workshops were provided on how to contribute

223 (7)

Mean

3.0

SD

1.26

Median

3.0

IQR

2.0, 4.0

Range

1, 5

[some remarks]

  • It looks like around half of the participants agreed that they could be engaged more with workshops. That’s really good.

EDI issues

The second group of items on the survey collected information about selected dimensions of equity, diversity, and inclusion, namely gender, sexual orientation, race and/or culture, disability and/or neurodivergence, and language dominance.

For each dimension, participants were asked if they identified with the dimension, or whether they thought that others would associate them with it, along with the optional opportunity to supply more information about their own specific identity along this dimension.

Crucially, they were also asked whether they felt that that identity or association had affected their interactions in the PsychoPy® community. If they answered in the affirmative, they saw eight more questions related to this identity shortly thereafter in the survey.

These eight further questions fell into three categories in the manner shown below:

  • Treatment by others
    • negative perception
    • need to hide identity
    • dismissiveness towards contributions
    • target of derisive comments
    • target of microaggressions
  • Self-regard
    • self-doubt
    • stereotype threat
  • Isolation
    • a desire to interact with others more like themselves

Participants could agree or disagree with each of these statements using a 1-7 Likert scale, where 1 indicated Strongly disagree and a 7 indicated Strongly agree.

Note

Note that on the 1-7 scale for each of the statements, the number 4 is directly in the middle of the scale, which can be interpreted as neither agreeing nor disagreeing. You will see that we set responses of 4 to the side of the respective stacked frequency barplots, in yellow.

Also, the barplots are sorted within each category (treatment, self-regard, and isolation) along descending frequency of agreement. That is, the topmost barplot within each category is the one with highest number of agreements, whereas the bottommost barplot within each category is the one with the highest number of disagreements.

Summaries of the responses to these statements are provided below after the respective questions concerning their identity.

gender

The first EDI category is gender. We present the responses to the issue of identity, followed by a table of descriptions (supplied by some of the participants). This is followed by whether the participant felt affected in the PsychoPy® community by that identity. Finally, we summarise the participants responses to items listed under treatment (by others), self-regard, and isolation.

identity

The sections directly below summarise, both visually and verbally, the answer to the following question:

Which gender do you identify most with?

visualisation
Show the code
visMain |> 
  select(gender) |> 
  ostFreqPlot(
    ostColour = ostBlue,
    sorting = "none"
  )

Barplot of responses to the following statement: 'Which gender do you identify most with?'

verbal summary
  • Which gender do you identify most with?
    • Total responses: 226 (out of 230) or 98.3% of the total
    • Those who selected man: 133, or 58.8%
    • Those who selected not listed: 8, or 3.5%
    • Those who selected woman: 85, or 37.6%

descriptions

The table directly below lists the answers supplied to the following question:

Feel free to describe your gender here (or not)

Show the code
visMain |> 
  count(genderDesc) |>
  arrange(desc(n)) |>
  datatable(
    class = 'cell-border stripe',
    colnames = c(
      "Feel free to describe your gender here (or not)",
      "count"
      ),
    options = list(
      columnDefs = list(
        list(
          targets = 1,
          render = JS(
            "function(data, type, row, meta) {",
            "return data === null ? 'NA' : data;",
            "}"
            )
          )
        )
      )
    )

felt affected

The sections directly below summarise, both visually and verbally, the answer to the following question:

Do you feel that your gender status has affected your interactions with the PsychoPy community or software ecosystem?

visualisation
Show the code
visMain |> 
  select(genderAffected) |> 
  ostFreqPlot(
    ostColour = ostOrange,
    sorting = "none"
  )

Barplot of responses to: 'Do you feel that your gender status has affected your interactions with the PsychoPy community or software ecosystem?'

verbal summary
  • Do you feel that your gender status has affected your interactions with the PsychoPy community or software ecosystem?
    • Total responses: 214 (out of 230) or 93% of the total
    • Those who selected no: 209, or 97.7% of those who responded to this question.
    • Those who selected yes: 5, or 2.3% of those who responded to this question.
Important insight

This question regarding gender determined whether or not the participant saw the items regarding treatment (by others), self-regard, and isolation.

  • Of the 133 participants who identified as men, two responded yes to this question.
  • Of the 85 participants who identified as women, three responded yes to this question.
  • Of the 8 participants who indicated their gender was not listed, zero responded yes to this question.

treatment, self-regard, isolation

The following statements were seen only by the subset of participants noted above. Specifically, they were restricted to the five who replied yes to the question asking them whether they had felt that their gender identity has affected their interactions with the PsychoPy® community.

The exact questions are listed in the verbal summary after the visualisation.

visualisation
Show the code
visMain |> 
  select(genderNegPerc:genderOthersLikeMe) |> 
  stackedLikertGroups(likertTitle = "Gender")

Stacked frequency barplots of responses to several statements on gender, categorized into the following: treatment by others, self-regard, and isolation.

verbal summary

Below, we describe the numbers in the figure above, but in the order in which the items appeared in the survey.

treatment by others
  • I feel that I have been negatively perceived [due to my gender]
    • Total responses: 4 (out of 230) or 1.7% of the total
    • Generally disagreed: 3, or 75%
    • Neutral: 1, or 25%
    • Generally agreed: 0, or 0%
  • I have felt the need to hide [my gender] in order to be taken seriously
    • Total responses: 4 (out of 230) or 1.7% of the total
    • Generally disagreed: 3, or 75%
    • Neutral: 0, or 0%
    • Generally agreed: 1, or 25%
  • My questions and/or contributions have been ignored at times [due to my gender]
    • Total responses: 4 (out of 230) or 1.7% of the total
    • Generally disagreed: 3, or 75%
    • Neutral: 1, or 25%
    • Generally agreed: 0, or 0%
  • I have been the target of intentionally derisive comments [due to my gender]
    • Total responses: 4 (out of 230) or 1.7% of the total
    • Generally disagreed: 3, or 75%
    • Neutral: 1, or 25%
    • Generally agreed: 0, or 0%
  • [Due to my gender] I have been the target of often unintentional, but subtly disdainful comments that are cumulatively hurtful
    • Total responses: 4 (out of 230) or 1.7% of the total
    • Generally disagreed: 3, or 75%
    • Neutral: 0, or 0%
    • Generally agreed: 1, or 25%
self-regard
  • [Due to my gender] I have doubted my own potential
    • Total responses: 5 (out of 230) or 2.2% of the total
    • Generally disagreed: 2, or 40%
    • Neutral: 2, or 40%
    • Generally agreed: 1, or 20%
  • [Due to my gender] I have feared being negatively judged by others, which has discouraged me from trying out new skills
    • Total responses: 5 (out of 230) or 2.2% of the total
    • Generally disagreed: 2, or 40%
    • Neutral: 2, or 40%
    • Generally agreed: 1, or 20%
isolation
  • I wish I saw more people in the community that were similar [in gender] to me
    • Total responses: 5 (out of 230) or 2.2% of the total
    • Generally disagreed: 3, or 60%
    • Neutral: 0, or 0%
    • Generally agreed: 2, or 40%
central tendency
Show the code
visMain |>
  select(genderNegPerc:genderOthersLikeMe) |>
  tableLikert(
    lowerBound = "1 = Strongly disagree",
    upperBound = "7 = Strongly agree"
  )
Statistics for responses to statements regarding gender

Statement (1 = Strongly disagree; 7 = Strongly agree)

n (NA)

N = 230

I feel that I have been negatively perceived [due to my gender]

4 (226)

Mean

1.8

SD

1.50

Median

1.0

IQR

1.0, 1.8

Range

1, 4

I have felt the need to hide [my gender] in order to be taken seriously

4 (226)

Mean

2.2

SD

1.89

Median

1.5

IQR

1.0, 2.8

Range

1, 5

My questions and/or contributions have been ignored at times [due to my gender]

4 (226)

Mean

2.0

SD

1.41

Median

1.5

IQR

1.0, 2.5

Range

1, 4

I have been the target of intentionally derisive comments [due to my gender]

4 (226)

Mean

2.0

SD

1.41

Median

1.5

IQR

1.0, 2.5

Range

1, 4

[Due to my gender] I have been the target of often unintentional, but subtly disdainful comments that are cumulatively hurtful

4 (226)

Mean

2.2

SD

1.89

Median

1.5

IQR

1.0, 2.8

Range

1, 5

[Due to my gender] I have doubted my own potential

5 (225)

Mean

3.8

SD

2.17

Median

4.0

IQR

3.0, 4.0

Range

1, 7

[Due to my gender] I have feared being negatively judged by others, which has discouraged me from trying out new skills

5 (225)

Mean

3.6

SD

2.30

Median

4.0

IQR

2.0, 4.0

Range

1, 7

I wish I saw more people in the community that were similar [in gender] to me

5 (225)

Mean

3.2

SD

3.03

Median

1.0

IQR

1.0, 6.0

Range

1, 7

[some remarks]

  • This is a pretty small group, but something that stands out so far is that only one of them agreed with most of the statements, and there was only one statement where two of them agreed with it (isolation)
  • Of course, the other surprising thing was that none of the participants who indicated that their gender was not listed indicated that they felt that their gender had affected their interactions in the PsychoPy® community. Yet two people who identified as men and three who identified as women did. Note that we don’t really have a way of determining what proportion of those four were transgender.

sexual orientation

The second EDI category is sexual orientation. As above, we present the responses to the issue of identity, followed by a table of descriptions (supplied by some of the participants). This is followed by whether the participant felt affected in the PsychoPy® community by that identity. Finally, we summarise the participants responses to items listed under treatment (by others), self-regard, and isolation.

identity

visualisation
Show the code
visMain |> 
  select(nonHeteroCommunity) |> 
  ostFreqPlot(
    ostColour = ostYellow,
    sorting = "none"
  )

Barplot of responses to the following: 'Do you, or might others who know you well, consider you somehow NOT to be part of the heterosexual community?'

verbal summary

Below, we describe the numbers in the figure above.

  • Do you, or might others who know you well, consider you somehow NOT to be part of the heterosexual community?
    • Total responses: 225 (out of 230) or 97.8% of the total
    • Those who selected no: 189, or 84%
    • Those who selected yes: 36, or 16%

descriptions

If participants chose yes as an answer above, they were given the opportunity to describe their sexual identity, though doing so was optional. For those who did, the table below lists the descriptions they provided.

The question was as follows:

Feel free to describe your sexual orientation here (or not)

Show the code
visMain |> 
  count(nonHeteroDesc) |>
  arrange(desc(n)) |>
  datatable(
    class = 'cell-border stripe',
    colnames = c(
      "Feel free to describe your sexual orientation here (or not)",
      "count"
      ),
    options = list(
      columnDefs = list(
        list(
          targets = 1,
          render = JS(
            "function(data, type, row, meta) {",
            "return data === null ? 'NA' : data;",
            "}"
            )
          )
        )
      )
    )

felt affected

The sections directly below summarise, both visually and verbally, the answer to the following question:

Do you feel that your sexual orientation has affected your interactions with the PsychoPy community or software ecosystem?

visualisation
Show the code
visMain |> 
  select(nonHeteroAffected) |> 
  ostFreqPlot(
    ostColour = ostBlue,
    sorting = "none"
  )

Barplot of responses to the following: 'Do you feel that your sexual orientation has affected your interactions with the PsychoPy community...?'

verbal summary

Below, we describe the numbers in the figure above.

  • Do you feel that your sexual orientation has affected your interactions with the PsychoPy community or software ecosystem?
    • Total responses: 36 (out of 230) or 15.7% of the total
    • Those who selected no: 35, or 97.2% of those who responded to this question..
    • Those who selected yes: 1, or 2.8% of those who responded to this question..
Important insight

This question regarding sexual orientation determined whether or not the participant saw the items regarding treatment (by others), self-regard, and isolation.

The one yes response here comprises 2.8% of the 36 who identified with a sexual orientation other than heterosexuality. In contrast, the 35 no responses here comprise 97.2%


treatment, self-regard, isolation

The following statements were seen only by the subset of participants noted above. Specifically, they were restricted to the one who replied yes to the question asking them whether they had felt that their sexual orientation has affected their interactions with the PsychoPy® community.

The exact questions are listed in the verbal summary after the visualisation.

visualisation
Show the code
visMain |>
  select(nonHeteroNegPerc:nonHeteroOthersLikeMe) |> 
  stackedLikertGroups(likertTitle = "Non-heterosexuality")

Stacked frequency barplots of responses to several statements on sexuality, categorized into the following: treatment by others, self-regard, and isolation.

verbal summary

Below, we describe the numbers in the figure above, but in the order in which the items appeared in the survey.

treatment by others
  • I feel that I have been negatively perceived [due to my non-heterosexuality]
    • Total responses: 1 (out of 230) or 0.4% of the total
    • Generally disagreed: 1, or 100%
    • Neutral: 0, or 0%
    • Generally agreed: 0, or 0%
  • I have felt the need to hide [my non-heterosexuality] in order to be taken seriously
    • Total responses: 1 (out of 230) or 0.4% of the total
    • Generally disagreed: 1, or 100%
    • Neutral: 0, or 0%
    • Generally agreed: 0, or 0%
  • My questions and/or contributions have been ignored at times [due to my non-heterosexuality]
    • Total responses: 1 (out of 230) or 0.4% of the total
    • Generally disagreed: 1, or 100%
    • Neutral: 0, or 0%
    • Generally agreed: 0, or 0%
  • I have been the target of intentionally derisive comments [due to my non-heterosexuality]
    • Total responses: 1 (out of 230) or 0.4% of the total
    • Generally disagreed: 1, or 100%
    • Neutral: 0, or 0%
    • Generally agreed: 0, or 0%
  • [Due to my non-heterosexuality] I have been the target of often unintentional, but subtly disdainful comments that are cumulatively hurtful
    • Total responses: 1 (out of 230) or 0.4% of the total
    • Generally disagreed: 1, or 100%
    • Neutral: 0, or 0%
    • Generally agreed: 0, or 0%
self-regard
  • [Due to my non-heterosexuality] I have doubted my own potential
    • Total responses: 1 (out of 230) or 0.4% of the total
    • Generally disagreed: 1, or 100%
    • Neutral: 0, or 0%
    • Generally agreed: 0, or 0%
  • [Due to my non-heterosexuality] I have feared being negatively judged by others, which has discouraged me from trying out new skills
    • Total responses: 1 (out of 230) or 0.4% of the total
    • Generally disagreed: 1, or 100%
    • Neutral: 0, or 0%
    • Generally agreed: 0, or 0%
isolation
  • I wish I saw more people in the community that were similar [in non-heterosexuality] to me
    • Total responses: 1 (out of 230) or 0.4% of the total
    • Generally disagreed: 0, or 0%
    • Neutral: 1, or 100%
    • Generally agreed: 0, or 0%
central tendency
Show the code
visMain |>
  select(nonHeteroNegPerc:nonHeteroOthersLikeMe) |>
  tableLikert(
    lowerBound = "1 = Strongly disagree",
    upperBound = "7 = Strongly agree"
  )
Statistics for responses to statements regarding sexual orientation

Statement (1 = Strongly disagree; 7 = Strongly agree)

n (NA)

N = 230

I feel that I have been negatively perceived [due to my non-heterosexuality]

1 (229)

Mean

2.0

SD

NA

Median

2.0

IQR

2.0, 2.0

Range

2, 2

I have felt the need to hide [my non-heterosexuality] in order to be taken seriously

1 (229)

Mean

2.0

SD

NA

Median

2.0

IQR

2.0, 2.0

Range

2, 2

My questions and/or contributions have been ignored at times [due to my non-heterosexuality]

1 (229)

Mean

2.0

SD

NA

Median

2.0

IQR

2.0, 2.0

Range

2, 2

I have been the target of intentionally derisive comments [due to my non-heterosexuality]

1 (229)

Mean

2.0

SD

NA

Median

2.0

IQR

2.0, 2.0

Range

2, 2

[Due to my non-heterosexuality] I have been the target of often unintentional, but subtly disdainful comments that are cumulatively hurtful

1 (229)

Mean

2.0

SD

NA

Median

2.0

IQR

2.0, 2.0

Range

2, 2

[Due to my non-heterosexuality] I have doubted my own potential

1 (229)

Mean

1.0

SD

NA

Median

1.0

IQR

1.0, 1.0

Range

1, 1

[Due to my non-heterosexuality] I have feared being negatively judged by others, which has discouraged me from trying out new skills

1 (229)

Mean

2.0

SD

NA

Median

2.0

IQR

2.0, 2.0

Range

2, 2

I wish I saw more people in the community that were similar [in non-heterosexuality] to me

1 (229)

Mean

4.0

SD

NA

Median

4.0

IQR

4.0, 4.0

Range

4, 4

[some remarks]

  • Of the 36 people who indicated that they were associated with non-heterosexuality, only one thought it had affected their interactions with the PsychoPy® community, and they mostly disagreed with negative treatment by others and disagreed with statements expressing low self-regard. They were neutral-ish on whether they’d like to see others more like them in the community.

race / culture

The third EDI category is race and/or culture. As before, we present the responses to the issue of identity, followed by a table of descriptions (supplied by some of the participants). This is followed by whether the participant felt affected in the PsychoPy® community by that identity. Finally, we summarise the participants responses to items listed under treatment (by others), self-regard, and isolation.

identity

visualisation
Show the code
visMain |> 
  select(raceCulture) |> 
  ostFreqPlot(
    ostColour = ostOrange,
    sorting = "none"
  )

Barplot of responses to: 'Do you, or might others who know you well, consider you part of a race/culture that is potentially discriminated against?'

verbal summary

Below, we describe the numbers in the figure above.

  • Do you, or might others who know you well, consider you part of a race and/or culture that is potentially discriminated against?
    • Total responses: 226 (out of 230) or 98.3% of the total
    • Those who selected no: 184, or 81.4%
    • Those who selected yes: 42, or 18.6%

descriptions

If participants chose yes as an answer above, they were given the opportunity to describe their race(s) and/or culture(s), though doing so was optional. For those who did, the table below lists the descriptions they provided.

The question was as follows:

Feel free to describe your race and/or culture here (or not)

Show the code
visMain |> 
  count(raceCultureDesc) |>
  arrange(desc(n)) |>
  datatable(
    class = 'cell-border stripe',
    colnames = c(
      "Feel free to describe your race and/or culture here (or not)",
      "count"
      ),
    
    options = list(
      columnDefs = list(
        list(
          targets = 1,
          render = JS(
            "function(data, type, row, meta) {",
            "return data === null ? 'NA' : data;",
            "}"
            )
          )
        )
      )
    )

felt affected

The sections directly below summarise, both visually and verbally, the answer to the following question:

Do you feel that your race and/or culture has affected your interactions with the PsychoPy community or software ecosystem?

visualisation
Show the code
visMain |> 
  select(raceCultureAffected) |> 
  ostFreqPlot(
    ostColour = ostYellow,
    sorting = "none"
  )

Frequency barplot of responses to the following statement: 'Do you feel that your race and/or culture has affected your interactions with the PsychoPy community or software ecosystem?' If participants chose to respond, they could respond with either 'yes' or 'no.'

verbal summary

Below, we describe the numbers in the figure above.

  • Do you feel that your race and/or culture has affected your interactions with the PsychoPy community or software ecosystem?
    • Total responses: 42 (out of 230) or 18.3% of the total
    • Those who selected no: 39, or 92.9% of those who responded to this question.
    • Those who selected yes: 3, or 7.1% of those who responded to this question.
Important insight

This question regarding race and/or culture determined whether or not the participant saw the items regarding treatment (by others), self-regard, and isolation.

The three yes responses here comprise 7.1% of the 42 who identified with one or more race(s) and/or culture(s) that were potentially discriminated against. In contrast, the 39 no responses here comprise 92.9%


treatment, self-regard, isolation

The following statements were seen only by the subset of participants noted above. Specifically, they were restricted to the three who replied yes to the question asking them whether they had felt that their racial and/or cultural identity has affected their interactions with the PsychoPy® community.

The exact questions are listed in the verbal summary after the visualisation.

visualisation
Show the code
visMain |>
  select(raceCultureNegPerc:raceCultureOthersLikeMe) |> 
  stackedLikertGroups(likertTitle = "Race(s) and/or Culture(s)")

Stacked frequency barplots of responses to statements on race/culture, categorized into the following: treatment by others, self-regard, and isolation.

verbal summary

Below, we describe the numbers in the figure above, but in the order in which the items appeared in the survey.

treatment by others
  • I feel that I have been negatively perceived [due to my race and/or culture]
    • Total responses: 3 (out of 230) or 1.3% of the total
    • Generally disagreed: 1, or 33.3%
    • Neutral: 0, or 0%
    • Generally agreed: 2, or 66.7%
  • I have felt the need to hide [my race and/or culture] in order to be taken seriously
    • Total responses: 3 (out of 230) or 1.3% of the total
    • Generally disagreed: 1, or 33.3%
    • Neutral: 1, or 33.3%
    • Generally agreed: 1, or 33.3%
  • My questions and/or contributions have been ignored at times [due to my race and/or culture]
    • Total responses: 3 (out of 230) or 1.3% of the total
    • Generally disagreed: 1, or 33.3%
    • Neutral: 1, or 33.3%
    • Generally agreed: 1, or 33.3%
  • I have been the target of intentionally derisive comments [due to my race and/or culture]
    • Total responses: 3 (out of 230) or 1.3% of the total
    • Generally disagreed: 3, or 100%
    • Neutral: 0, or 0%
    • Generally agreed: 0, or 0%
  • [Due to my race and/or culture] I have been the target of often unintentional, but subtly disdainful comments that are cumulatively hurtful
    • Total responses: 3 (out of 230) or 1.3% of the total
    • Generally disagreed: 1, or 33.3%
    • Neutral: 1, or 33.3%
    • Generally agreed: 1, or 33.3%
self-regard
  • [Due to my race and/or culture] I have doubted my own potential
    • Total responses: 3 (out of 230) or 1.3% of the total
    • Generally disagreed: 0, or 0%
    • Neutral: 0, or 0%
    • Generally agreed: 3, or 100%
  • [Due to my race and/or culture] I have feared being negatively judged by others, which has discouraged me from trying out new skills
    • Total responses: 3 (out of 230) or 1.3% of the total
    • Generally disagreed: 0, or 0%
    • Neutral: 1, or 33.3%
    • Generally agreed: 2, or 66.7%
isolation
  • I wish I saw more people in the community that were similar [in race and/or culture] to me
    • Total responses: 3 (out of 230) or 1.3% of the total
    • Generally disagreed: 0, or 0%
    • Neutral: 0, or 0%
    • Generally agreed: 3, or 100%
central tendency
Show the code
visMain |>
  select(raceCultureNegPerc:raceCultureOthersLikeMe) |> 
  tableLikert(
    lowerBound = "1 = Strongly disagree",
    upperBound = "7 = Strongly agree"
  )
Statistics for responses to statements regarding race and/or culture

Statement (1 = Strongly disagree; 7 = Strongly agree)

n (NA)

N = 230

I feel that I have been negatively perceived [due to my race and/or culture]

3 (227)

Mean

4.7

SD

1.53

Median

5.0

IQR

4.0, 5.5

Range

3, 6

I have felt the need to hide [my race and/or culture] in order to be taken seriously

3 (227)

Mean

4.0

SD

1.00

Median

4.0

IQR

3.5, 4.5

Range

3, 5

My questions and/or contributions have been ignored at times [due to my race and/or culture]

3 (227)

Mean

4.0

SD

2.00

Median

4.0

IQR

3.0, 5.0

Range

2, 6

I have been the target of intentionally derisive comments [due to my race and/or culture]

3 (227)

Mean

1.7

SD

0.58

Median

2.0

IQR

1.5, 2.0

Range

1, 2

[Due to my race and/or culture] I have been the target of often unintentional, but subtly disdainful comments that are cumulatively hurtful

3 (227)

Mean

4.0

SD

2.00

Median

4.0

IQR

3.0, 5.0

Range

2, 6

[Due to my race and/or culture] I have doubted my own potential

3 (227)

Mean

5.7

SD

0.58

Median

6.0

IQR

5.5, 6.0

Range

5, 6

[Due to my race and/or culture] I have feared being negatively judged by others, which has discouraged me from trying out new skills

3 (227)

Mean

5.3

SD

1.15

Median

6.0

IQR

5.0, 6.0

Range

4, 6

I wish I saw more people in the community that were similar [in race and/or culture] to me

3 (227)

Mean

6.0

SD

1.00

Median

6.0

IQR

5.5, 6.5

Range

5, 7

[some remarks]

  • Out of the 42 people who indicated that they were of a race and/or culture that is potentially discriminated against, only 3 indicated that they had felt that their interactions within the PsychoPy® community had been affected because of it. That seems fairly low (though still a problem).
  • Those three seemed evenly split on most of the treatment category (with the exception of intentionally derisive comments, where there was strictly disagreement). And all of them expressed some sort of agreement with the self-regard and isolation items.

disability / neurodivergence

The fourth EDI category is disability and/or neurodivergence. As above, we present the responses to the issue of identity, followed by a table of descriptions (supplied by some of the participants). This is followed by whether the participant felt affected in the PsychoPy® community by that identity. Finally, we summarise the participants responses to items listed under treatment (by others), self-regard, and isolation.

identity

visualisation
Show the code
visMain |> 
  select(disability) |> 
  ostFreqPlot(
    ostColour = ostBlue,
    sorting = "none"
  )

Frequency barplot of responses to the following question: 'Do you, or might others who know you well, consider you disabled and/or neurodivergent (i.e., visible or invisible; e.g., blind, paralysed, cerebral palsy, ASD, ADHD)?' If participants chose to respond, they could respond with either 'yes' or 'no.'

verbal summary

Below, we describe the numbers in the figure above.

  • Do you, or might others who know you well, consider you disabled and/or neurodivergent (i.e., visible or invisible; e.g., blind, paralysed, cerebral palsy, ASD, ADHD)?
    • Total responses: 227 (out of 230) or 98.7% of the total
    • Those who selected no: 199, or 87.7%
    • Those who selected yes: 28, or 12.3%

descriptions

If participants chose yes as an answer above, they were given the opportunity to describe their disability(-ies) and/or neurodivergence, though doing so was optional. For those who did, the table below lists the descriptions they provided.

The question was as follows:

Feel free to describe your disabled and/or neurodivergent status (or not)

Show the code
visMain |> 
  count(disabilityDesc) |>
  arrange(desc(n)) |>
  datatable(
    class = 'cell-border stripe',
    colnames = c(
      "Feel free to describe your disabled and/or neurodivergent status (or not)",
      "count"
      ),
    
    options = list(
      columnDefs = list(
        list(
          targets = 1,
          render = JS(
            "function(data, type, row, meta) {",
            "return data === null ? 'NA' : data;",
            "}"
            )
          )
        )
      )
    )

felt affected

The sections directly below summarise, both visually and verbally, the answer to the following question:

Do you feel that your disabled and/or neurodivergent status has affected your interactions with the PsychoPy community or software ecosystem?

visualisation
Show the code
visMain |> 
  select(disabilityAffected) |> 
  ostFreqPlot(
    ostColour = ostOrange,
    sorting = "none"
  )

Frequency barplot of responses to the following statement: 'Do you feel that your disabled and/or neurodivergent status has affected your interactions with the PsychoPy community or software ecosystem?' If participants chose to respond, they could respond with either 'yes' or 'no.'

verbal summary

Below, we describe the numbers in the figure above.

  • Do you feel that your disabled and/or neurodivergent status has affected your interactions with the PsychoPy community or software ecosystem?
    • Total responses: 28 (out of 230) or 12.2% of the total
    • Those who selected no: 22, or 78.6% of those who responded to this question.
    • Those who selected yes: 6, or 21.4% of those who responded to this question.
Important insight

This question regarding disability and/or neurodivergence determined whether or not the participant saw the items regarding treatment (by others), self-regard, and isolation.

The six yes responses here comprise 21.4% of the 28 who identified with disability or neurodivergence. In contrast, the 22 no responses here comprise 78.6%


treatment, self-regard, isolation

The following statements were seen only by the subset of participants noted above. Specifically, they were restricted to the six who replied yes to the question asking them whether they had felt that their disability and/or neurodivergence has affected their interactions with the PsychoPy® community.

The exact questions are listed in the verbal summary after the visualisation.

visualisation
Show the code
visMain |>
  select(disabilityNegPerc:disabilityOthersLikeMe) |> 
  stackedLikertGroups(likertTitle = "Disability and/or neurodivergence")

Stacked frequency barplots of responses to disability/neurodivergence, categorized into the following: treatment by others, self-regard, and isolation.

verbal summary

Below, we describe the numbers in the figure above, but in the order in which the items appeared in the survey.

treatment by others
  • I feel that I have been negatively perceived [due to my disability and/or neurodivergence]
    • Total responses: 6 (out of 230) or 2.6% of the total
    • Generally disagreed: 5, or 83.3%
    • Neutral: 0, or 0%
    • Generally agreed: 1, or 16.7%
  • I have felt the need to hide [my disability and/or neurodivergence] in order to be taken seriously
    • Total responses: 6 (out of 230) or 2.6% of the total
    • Generally disagreed: 5, or 83.3%
    • Neutral: 0, or 0%
    • Generally agreed: 1, or 16.7%
  • My questions and/or contributions have been ignored at times [due to my disability and/or neurodivergence]
    • Total responses: 6 (out of 230) or 2.6% of the total
    • Generally disagreed: 6, or 100%
    • Neutral: 0, or 0%
    • Generally agreed: 0, or 0%
  • I have been the target of intentionally derisive comments [due to my disability and/or neurodivergence]
    • Total responses: 6 (out of 230) or 2.6% of the total
    • Generally disagreed: 6, or 100%
    • Neutral: 0, or 0%
    • Generally agreed: 0, or 0%
  • [Due to my disability and/or neurodivergence] I have been the target of often unintentional, but subtly disdainful comments that are cumulatively hurtful
    • Total responses: 6 (out of 230) or 2.6% of the total
    • Generally disagreed: 6, or 100%
    • Neutral: 0, or 0%
    • Generally agreed: 0, or 0%
self-regard
  • [Due to my disability and/or neurodivergence] I have doubted my own potential
    • Total responses: 6 (out of 230) or 2.6% of the total
    • Generally disagreed: 1, or 16.7%
    • Neutral: 0, or 0%
    • Generally agreed: 5, or 83.3%
  • [Due to my disability and/or neurodivergence] I have feared being negatively judged by others, which has discouraged me from trying out new skills
    • Total responses: 6 (out of 230) or 2.6% of the total
    • Generally disagreed: 2, or 33.3%
    • Neutral: 1, or 16.7%
    • Generally agreed: 3, or 50%
isolation
  • I wish I saw more people in the community that were similar [in disability and/or neurodivergence] to me
    • Total responses: 6 (out of 230) or 2.6% of the total
    • Generally disagreed: 2, or 33.3%
    • Neutral: 1, or 16.7%
    • Generally agreed: 3, or 50%
central tendency
Show the code
visMain |>
  select(disabilityNegPerc:disabilityOthersLikeMe) |> 
  tableLikert(
    lowerBound = "1 = Strongly disagree",
    upperBound = "7 = Strongly agree"
  )
Statistics for responses to statements regarding disability

Statement (1 = Strongly disagree; 7 = Strongly agree)

n (NA)

N = 230

I feel that I have been negatively perceived [due to my disability and/or neurodivergence]

6 (224)

Mean

2.2

SD

1.94

Median

1.5

IQR

1.0, 2.0

Range

1, 6

I have felt the need to hide [my disability and/or neurodivergence] in order to be taken seriously

6 (224)

Mean

2.0

SD

1.55

Median

1.5

IQR

1.0, 2.0

Range

1, 5

My questions and/or contributions have been ignored at times [due to my disability and/or neurodivergence]

6 (224)

Mean

1.5

SD

0.55

Median

1.5

IQR

1.0, 2.0

Range

1, 2

I have been the target of intentionally derisive comments [due to my disability and/or neurodivergence]

6 (224)

Mean

1.5

SD

0.84

Median

1.0

IQR

1.0, 1.8

Range

1, 3

[Due to my disability and/or neurodivergence] I have been the target of often unintentional, but subtly disdainful comments that are cumulatively hurtful

6 (224)

Mean

1.2

SD

0.41

Median

1.0

IQR

1.0, 1.0

Range

1, 2

[Due to my disability and/or neurodivergence] I have doubted my own potential

6 (224)

Mean

5.0

SD

2.10

Median

5.5

IQR

5.0, 6.0

Range

1, 7

[Due to my disability and/or neurodivergence] I have feared being negatively judged by others, which has discouraged me from trying out new skills

6 (224)

Mean

4.5

SD

2.26

Median

5.0

IQR

3.2, 6.0

Range

1, 7

I wish I saw more people in the community that were similar [in disability and/or neurodivergence] to me

6 (224)

Mean

4.5

SD

2.95

Median

5.5

IQR

1.8, 7.0

Range

1, 7

[some remarks]

  • Of the 28 participants who indicated some sort of disability and/or neurodivergence, six indicated that they thought that status had affected their interactions in the PsychoPy® community. I think this is the highest percentage of all the groups.
  • Interestingly, among those six, there was fairly widespread disagreement with the notion that they had been treated poorly by others. Rather, there is much more agreement with the self-regard issues. That is, 4-5 of those six seem to indicate lack of confidence.
  • A slight majority of them also feel isolated.

written language dominance

The fifth EDI category is written language dominance. As before, we present the responses to the issue of identity, followed by a table of descriptions (supplied by some of the participants). This is followed by whether the participant felt affected in the PsychoPy® community by that identity. Finally, we summarise the participants responses to items listed under treatment (by others), self-regard, and isolation.

identity

visualisation
Show the code
visMain |> 
  select(domLangEnglish) |> 
  ostFreqPlot(
    ostColour = ostYellow,
    sorting = "none"
  )

Frequency barplot of responses to the following question: 'Is your dominant (preferred) written language English?' If participants chose to respond, they could respond with either 'yes' or 'no.'

verbal summary
  • Is your dominant (preferred) written language English?
    • Total responses: 229 (out of 230) or 99.6% of the total
    • Those who selected no: 89, or 38.9%
    • Those who selected yes: 140, or 61.1%

descriptions

If participants chose no as an answer above, they were given the opportunity to describe their dominant language, though doing so was optional. For those who did, the table below lists the descriptions they provided.

The question was as follows:

Feel free to type in your dominant language (or not)

Show the code
visMain |> 
  count(domLangDesc) |>
  arrange(desc(n)) |>
  datatable(
    class = 'cell-border stripe',
    colnames = c(
      "Feel free to type in your dominant language (or not)",
      "count"
      ),
    
    options = list(
      columnDefs = list(
        list(
          targets = 1,
          render = JS(
            "function(data, type, row, meta) {",
            "return data === null ? 'NA' : data;",
            "}"
            )
          )
        )
      )
    )

felt affected

The sections directly below summarise, both visually and verbally, the answer to the following question:

Do you feel that your dominant language has affected your interactions with the PsychoPy community or software ecosystem?

visualisation
Show the code
visMain |> 
  select(domLangAffected) |> 
  ostFreqPlot(
    ostColour = ostBlue,
    sorting = "none"
  )

Frequency barplot of responses to the following statement: 'Do you feel that your dominant language has affected your interactions with the PsychoPy community or software ecosystem?' If participants chose to respond, they could respond with either 'yes' or 'no.'

verbal summary

Below, we describe the numbers in the figure above.

  • Do you feel that your dominant language has affected your interactions with the PsychoPy community or software ecosystem?
    • Total responses: 89 (out of 230) or 38.7% of the total
    • Those who selected no: 79, or 88.8% of those who responded to this question.
    • Those who selected yes: 10, or 11.2% of those who responded to this question.
Important insight

This question regarding language dominance determined whether or not the participant saw the items regarding treatment (by others), self-regard, and isolation.

The ten yes responses here comprise 11.2% of the 89 who identified as having a dominant written language other than English. In contrast, the 79 no responses here comprise 88.8%


treatment, self-regard, isolation

The following statements were seen only by the subset of participants noted above. Specifically, they were restricted to the ten who replied yes to the question asking them whether they had felt that their language dominance has affected their interactions with the PsychoPy® community.

The exact questions are listed in the verbal summary after the visualisation.

visualisation
Show the code
visMain |>
  select(domLangNegPerc:domLangOthersLikeMe) |> 
  stackedLikertGroups(likertTitle = "Dominant Language")

Stacked frequency barplots of responses to language dominance, categorized by the following: treatment by others, self-regard, and isolation.

verbal summary

Below, we describe the numbers in the figure above, but in the order in which the items appeared in the survey.

treatment by others
  • I feel that I have been negatively perceived [due to my dominant written language]
    • Total responses: 10 (out of 230) or 4.3% of the total
    • Generally disagreed: 5, or 50%
    • Neutral: 4, or 40%
    • Generally agreed: 1, or 10%
  • I have felt the need to hide [my dominant written language] in order to be taken seriously
    • Total responses: 10 (out of 230) or 4.3% of the total
    • Generally disagreed: 7, or 70%
    • Neutral: 0, or 0%
    • Generally agreed: 3, or 30%
  • My questions and/or contributions have been ignored at times [due to my dominant written language]
    • Total responses: 10 (out of 230) or 4.3% of the total
    • Generally disagreed: 9, or 90%
    • Neutral: 0, or 0%
    • Generally agreed: 1, or 10%
  • I have been the target of intentionally derisive comments [due to my dominant written language]
    • Total responses: 10 (out of 230) or 4.3% of the total
    • Generally disagreed: 9, or 90%
    • Neutral: 1, or 10%
    • Generally agreed: 0, or 0%
  • [Due to my dominant written language] I have been the target of often unintentional, but subtly disdainful comments that are cumulatively hurtful
    • Total responses: 10 (out of 230) or 4.3% of the total
    • Generally disagreed: 9, or 90%
    • Neutral: 0, or 0%
    • Generally agreed: 1, or 10%
self-regard
  • [Due to my dominant written language] I have doubted my own potential
    • Total responses: 10 (out of 230) or 4.3% of the total
    • Generally disagreed: 7, or 70%
    • Neutral: 2, or 20%
    • Generally agreed: 1, or 10%
  • [Due to my dominant written language] I have feared being negatively judged by others, which has discouraged me from trying out new skills
    • Total responses: 10 (out of 230) or 4.3% of the total
    • Generally disagreed: 7, or 70%
    • Neutral: 1, or 10%
    • Generally agreed: 2, or 20%
isolation
  • I wish I saw more people in the community who used my language
    • Total responses: 10 (out of 230) or 4.3% of the total
    • Generally disagreed: 4, or 40%
    • Neutral: 0, or 0%
    • Generally agreed: 6, or 60%
central tendency
Show the code
visMain |>
  select(domLangNegPerc:domLangOthersLikeMe) |> 
  tableLikert(
    lowerBound = "1 = Strongly disagree",
    upperBound = "7 = Strongly agree"
  )
Statistics for responses to statements regarding dominant language

Statement (1 = Strongly disagree; 7 = Strongly agree)

n (NA)

N = 230

I feel that I have been negatively perceived [due to my dominant written language]

10 (220)

Mean

2.8

SD

2.10

Median

2.5

IQR

1.0, 4.0

Range

1, 7

I have felt the need to hide [my dominant written language] in order to be taken seriously

10 (220)

Mean

3.0

SD

2.45

Median

2.0

IQR

1.0, 4.5

Range

1, 7

My questions and/or contributions have been ignored at times [due to my dominant written language]

10 (220)

Mean

2.2

SD

1.81

Median

2.0

IQR

1.0, 2.0

Range

1, 7

I have been the target of intentionally derisive comments [due to my dominant written language]

10 (220)

Mean

1.5

SD

1.08

Median

1.0

IQR

1.0, 1.0

Range

1, 4

[Due to my dominant written language] I have been the target of often unintentional, but subtly disdainful comments that are cumulatively hurtful

10 (220)

Mean

1.5

SD

1.27

Median

1.0

IQR

1.0, 1.0

Range

1, 5

[Due to my dominant written language] I have doubted my own potential

10 (220)

Mean

2.5

SD

1.72

Median

2.0

IQR

1.0, 3.8

Range

1, 6

[Due to my dominant written language] I have feared being negatively judged by others, which has discouraged me from trying out new skills

10 (220)

Mean

2.4

SD

1.96

Median

1.0

IQR

1.0, 3.8

Range

1, 6

I wish I saw more people in the community who used my language

10 (220)

Mean

4.7

SD

2.83

Median

6.5

IQR

1.5, 7.0

Range

1, 7

[some remarks]

  • the percentage of participants dominant in a written language other than English was second only to those indicating one or more disabilities and/or neurodivergence.
  • their dominant concern seems to be isolation rather than treatment by others or self-regard
  • a sizeable minority of them, however, is concerned that they feel they need to hide their language dominance in order to be taken seriously.

Code of Conduct and documentation

The third group of items on the survey collected information about documentation and the participants’ awareness of and experience with the Code of Conduct.

There were three questions concerning each of the following:

  • awareness of the Code of Conduct
  • how findable, searchable, and accessible PsychoPy’s® documentation is
  • how much they trust the Code of Conduct will be enforced

The first was answered with a simple yes or no. The latter two were statements evaluated with a 1-7 Likert scale, where 1 represented Strongly disagree, and 7 represented Strongly agree.

Note

As before, note that on the 1-7 scale, the number 4 is directly in the middle of the scale, which can be interpreted as neither agreeing nor disagreeing. Accordingly, we set responses of 4 to the side of the respective stacked frequency barplots, in yellow.

awareness

The sections directly below summarise, both visually and verbally, the answer to the following question:

I am aware of the community Code of Conduct

visualisation

Show the code
visMain |> 
  select(awareOfCodeOfConduct) |> 
  ostFreqPlot(
    ostColour = ostOrange,
    sorting = "none"
  )

Frequency barplot of responses to the following question: 'I am aware of the community Code of Conduct' If participants chose to respond, they could respond with either 'yes' or 'no.'

verbal summary

  • I am aware of the community Code of Conduct
    • Total responses: 228 (out of 230) or 99.1% of the total
    • Those who selected no: 80, or 35.1%
    • Those who selected yes: 148, or 64.9%

findability, searchability, & accessibility

The sections directly below summarise, both visually and verbally, the answer to the following question:

I have found PsychoPy documentation to be easily findable, searchable, and accessible

visualisation

Show the code
visMain |>
  select(psychopyDocumentationEasy) |>
  ostFreqPlot(
    ostColour = ostOrange,
    sorting = "none"
  )

Barplot of agreement responses to the statement regarding findability, searchability, and accessibility of documentation.

verbal summary

  • I have found PsychoPy documentation to be easily findable, searchable, and accessible
    • Total responses: 227 (out of 230) or 98.7% of the total
    • Those who selected 1 (Strongly disagree): 6, or 2.6%
    • Those who selected 2: 11, or 4.8%
    • Those who selected 3: 24, or 10.6%
    • Those who selected 4 (neutral): 42, or 18.5%
    • Those who selected 5: 77, or 33.9%
    • Those who selected 6: 33, or 14.5%
    • Those who selected 7 (Strongly agree): 34, or 15%

trust in enforcement

The sections directly below summarise, both visually and verbally, the answer to the following question:

I trust that the Code of Conduct will be enforced

visualisation

Show the code
visMain |> 
  select(trustCodeWillBeEnforced) |> 
  ostFreqPlot(
    ostColour = ostYellow,
    sorting = "none"
  )

Barplot of agreement responses to the statement regarding trust in enforcement of the Code of Conduct.

verbal summary

  • I trust that the Code of Conduct will be enforced
    • Total responses: 224 (out of 230) or 97.4% of the total
    • Those who selected 1 (Strongly disagree): 1, or 0.4%
    • Those who selected 2: 4, or 1.8%
    • Those who selected 3: 11, or 4.9%
    • Those who selected 4 (neutral): 48, or 21.4%
    • Those who selected 5: 56, or 25%
    • Those who selected 6: 43, or 19.2%
    • Those who selected 7 (Strongly agree): 61, or 27.2%

central tendency

Show the code
visMain |>
  select(c("psychopyDocumentationEasy", "trustCodeWillBeEnforced")) |> 
  tableLikert(
    lowerBound = "1 = Strongly disagree",
    upperBound = "7 = Strongly agree"
  )
Statistics for responses to statements regarding the Code of Conduct and documentation

Statement (1 = Strongly disagree; 7 = Strongly agree)

n (NA)

N = 230

I have found PsychoPy documentation to be easily findable, searchable, and accessible

227 (3)

Mean

4.8

SD

1.48

Median

5.0

IQR

4.0, 6.0

Range

1, 7

I trust that the Code of Conduct will be enforced

224 (6)

Mean

5.4

SD

1.34

Median

5.0

IQR

4.0, 7.0

Range

1, 7

[some remarks]

  • About two-thirds of the participants were aware of the Code of Conduct. I suppose that’s to be expected, but it’s kinda disappointing, no?
  • Most of them felt that the documentation was easily findable, searchable, and accessible. But there were a few (just under 20%) who disagreed with this in general.
  • In terms of trust that the Code of Conduct would be enforced, there was general agreement here, though about 5% expressed mild disagreement here. About 2% expressed somewhat stronger disagreement. One person expressed the strongest level of disagreement (i.e., Strongly disagree).

[some final remarks]

background variables

In terms of the background variables, most of the people responding were early-career researchers and frequent users. Most of them interact with the community through helping others on the forum.

Lack of time and not knowing how to start seem to be the most important deterrents, but certainly not lack of interest or fear of not being welcome in the community. About half of them agreed that workshops would encourage them to contribute more.

EDI variables

With respect to equity, diversity, and inclusion, there were several interesting findings.

gender

Concerning gender, there was an odd finding at first blush. None of the eight people who identified as neither a man nor a woman indicated that they felt their identity had affected their interactions in the PsychoPy® community. However, two people who identified as men and two who identified as women did. Note that we did not ask anyone whether they were transgender. Any number of the 4 women and men could have been transgender.

But looking at the issues of treatment, self-regard, and isolation, this group seemed to be in general disagreement with (or neutral about) almost all of the statements. Still, on each question, about 1 out of the 4 seems to indicate some level of agreement. This could be more than one person.

sexual orientation

The next category was sexual orientation. Here, only \(\frac{1}{36}\) indicated that their sexual orientation might have been a problem in the PsychoPy® community. Still, that one person indicated disagreement with all of the treatment and self-regard questions. The only question that they weren’t in disagreement about was the isolation statement, and even there, they were neutral (having selected 4 on the 1-7 scale).

race and/or culture

Next we come to race and/or culture. Here, only \(\frac{3}{42}\) felt that their identity had affected their interactions with the PsychoPy® community.

In general however, they were fairly split across the board in terms of how others had treated them. Two exceptions were negative perception by others, where two of the three expressed that they had experienced that, and intentially derisive comments, where no one expressed agreement with having experienced that.

They were however, (almost) overwhelmingly in agreement with the self-regard and isolation statements.

They seem to lack confidence, more than anything.

disability and/or neurodivergence

With respect to disability and/or neurodivergence, the highest percentage of all the groups (\(\frac{6}{28}\)) went on to evaluate the subsequent EDI statements.

This group disagreed more unanimously with the treatment statements, with only one of them indicating that (1) there had some any negative perception of them, and (2) that they felt they needed to hide their identity in this regard.

But on the self-regard and isolation statements, there was general agreement. They seem to lack some self-confidence, along with feeling a little isolated.

written language dominance

Concerning written language dominance, of the 82 participants who indicated that their dominant written language is not English, only nine suggested that this might have been a problem in their interactions with the PsychoPy® community.

Among them, they disagreed in general (but not universally) with the statements regarding poor treatment by others. If there were any statements that raise concern, they are the ones about negative perception and hiding their identity (similar to the other groups).

But unlike the race/culture and disability/neurodivergence groups, this group also expressed little agreement with the self-regard statements. This actually makes sense as there’s little reason to believe that non-English language dominance should affect one’s self-regard.

In their case, the stand-out statement was the one on isolation. The majority of them do feel isolated, quite strongly it seems.

Code of Conduct & documentation variables

With respect to the Code of Conduct and documentation, a sizeable minority was not aware of the existence of the Code of Conduct. There was general (but not overwhelming) agreement that the documentation was easily findable, searchable, and accessible (M = 4.8, SD = 1.45, negative skew). There quite strong agreement that the Code of Conduct would be enforced (M = 5.4, SD = 1.32, strong negative skew with responses stacked increasingly positive).


R Packages used

Show the code
allPackages <- 
  append(
    neededPackages,
    c(
      "grateful", 
      "remotes"
      )
    )

    pkgs <- grateful::cite_packages(
      pkgs = allPackages,
      output = "table", 
      cite.tidyverse = F,
      bib.file = "grateful-refs-sumandvis.bib",
      Rmd.file = "grateful-report-sumandvis.Rmd",
      out.name = "grateful-citations-sumandvis"
      )
    knitr::kable(pkgs)
Package Version Citation
dplyr 1.1.0 Wickham, François, et al. (2023)
DT 0.27 Xie et al. (2023)
flextable 0.9.0 Gohel & Skintzos (2023); Gohel & Skintzos (2023)
flextable 0.9.0 Gohel & Skintzos (2023); Gohel & Skintzos (2023)
grateful 0.1.11 Rodríguez-Sánchez et al. (2022)
gtsummary 1.7.0 Sjoberg et al. (2021)
knitr 1.42 Xie (2014); Xie (2015); Xie (2023a)
purrr 1.0.1 Wickham & Henry (2023)
remotes 2.4.2 Csárdi et al. (2021)
showtext 0.9.5 Qiu & See file AUTHORS for details. (2022)
sjlabelled 1.2.0 Lüdecke (2022)
sjmisc 2.8.9 Lüdecke (2018)
sjPlot 2.8.13 Lüdecke (2023)
stringr 1.5.0 Wickham (2022)
tidyr 1.3.0 Wickham, Vaughan, et al. (2023)
xfun 0.37 Xie (2023b)

References

Csárdi, G., Hester, J., Wickham, H., Chang, W., Morgan, M., & Tenenbaum, D. (2021). Remotes: R package installation from remote repositories, including ’GitHub’. https://CRAN.R-project.org/package=remotes
Gohel, D., & Skintzos, P. (2023). Flextable: Functions for tabular reporting. https://CRAN.R-project.org/package=flextable
Lüdecke, D. (2018). Sjmisc: Data and variable transformation functions. Journal of Open Source Software, 3(26), 754. https://doi.org/10.21105/joss.00754
Lüdecke, D. (2022). Sjlabelled: Labelled data utility functions (version 1.2.0). https://doi.org/10.5281/zenodo.1249215
Lüdecke, D. (2023). sjPlot: Data visualization for statistics in social science. https://CRAN.R-project.org/package=sjPlot
Qiu, Y., & See file AUTHORS for details., authors/contributors of the included software. (2022). Showtext: Using fonts more easily in r graphs. https://CRAN.R-project.org/package=showtext
Rodríguez-Sánchez, F., Jackson, C. P., & Hutchins, S. D. (2022). Grateful: Facilitate citation of r packages. https://github.com/Pakillo/grateful
Sjoberg, D. D., Whiting, K., Curry, M., Lavery, J. A., & Larmarange, J. (2021). Reproducible summary tables with the gtsummary package. The R Journal, 13, 570–580. https://doi.org/10.32614/RJ-2021-053
Wickham, H. (2022). Stringr: Simple, consistent wrappers for common string operations. https://CRAN.R-project.org/package=stringr
Wickham, H., François, R., Henry, L., Müller, K., & Vaughan, D. (2023). Dplyr: A grammar of data manipulation. https://CRAN.R-project.org/package=dplyr
Wickham, H., & Henry, L. (2023). Purrr: Functional programming tools. https://CRAN.R-project.org/package=purrr
Wickham, H., Vaughan, D., & Girlich, M. (2023). Tidyr: Tidy messy data. https://CRAN.R-project.org/package=tidyr
Xie, Y. (2014). Knitr: A comprehensive tool for reproducible research in R. In V. Stodden, F. Leisch, & R. D. Peng (Eds.), Implementing reproducible computational research. Chapman; Hall/CRC.
Xie, Y. (2015). Dynamic documents with R and knitr (2nd ed.). Chapman; Hall/CRC. https://yihui.org/knitr/
Xie, Y. (2023a). Knitr: A general-purpose package for dynamic report generation in r. https://yihui.org/knitr/
Xie, Y. (2023b). Xfun: Supporting functions for packages maintained by ’yihui xie’. https://CRAN.R-project.org/package=xfun
Xie, Y., Cheng, J., & Tan, X. (2023). DT: A wrapper of the JavaScript library ’DataTables’. https://CRAN.R-project.org/package=DT